﻿using Dapper;
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Max.PH6_2006A.LowCode.ConsoleDemo
{
    public class DapperHelper
    {

        // How does dapper work?
        //1、创建IDbConnection对象
        //2、写一个CRUD的操作的sql 
        //3、调用Execute或者Query方法
        //4、安装对应数据库的驱动(sqlserver的安装sqlclient)和安装Dapper

        //=================================Ado.net(以SqlServer为例)五在对象===========================================
        //使用数据库操作的时候
        //1、第一步需要干嘛：连接数据库 ----  SqlConnection    -- 【Connection对象】
        //2、已连接上了数据库，需要干嘛：写Sql语句 ---- SqlCommand    --- 【Command对象】
        //3、sql语句写完了，接下来干嘛？运行这个sql语句 --- 在查询分析器里面，直接运行，可以得到结果展示
        //在程序里面，我们要获取sql的运行结果，怎么办？
                //1）我们一次性把所有的数据保存起来，先保存到内存里  ----  SqlDataAdapter    -- 【DataAdapter对象】
                //     将通过DataAdapter对象，把数据存在内存中       ----  【DataSet对象】
                //2）一行一行的读取，不一次性拿。拿一行数据，就处理一行 ---- 【DataReader对象】
        //问：DataSet DataReader DataTable都是什么，有什么关系和区别


        string _connectionString = "连接数据库的字符串";
        public void ExecuteSql(string sql)
        {
            //用什么数据库，就用什么数据库的连接对象
            var _iDbConnection = new SqlConnection(_connectionString);
            _iDbConnection.Open();
            _iDbConnection.Execute(sql);  //执行sql语句，返回的int（表示 是受影响行数）
            _iDbConnection.Query(sql);  //执行Query-Sql语句，返回的结果集
        }
    }
}
